From 0a6bf66088e0255768383bb56aacaf20f9c90b08 Mon Sep 17 00:00:00 2001 From: tsteven4 <13596209+tsteven4@users.noreply.github.com> Date: Tue, 23 Jul 2024 14:57:25 -0600 Subject: [PATCH] correct garmin real time altitude, add geoid height. (#1303) --- garmin.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/garmin.cc b/garmin.cc index ca642c3e7..d676e33df 100644 --- a/garmin.cc +++ b/garmin.cc @@ -579,7 +579,13 @@ GarminFormat::route_read() void GarminFormat::pvt2wpt(GPS_PPvt_Data pvt, Waypoint* wpt) { - wpt->altitude = pvt->alt; + // pvt->alt is height (in meters) above the WGS84 elipsoid. + // pvt->msl_hght is height (in meters) of WGS84 elipsoid above MSL. + // wpt->altitude is height (in meters) above geoid (mean sea level). + // wpt->geoidheight is "Height (in meters) of geoid (mean sea level) above WGS84 earth ellipsoid." + wpt->set_geoidheight(-pvt->msl_hght); + wpt->altitude = pvt->alt + pvt->msl_hght; + wpt->latitude = pvt->lat; wpt->longitude = pvt->lon; -- 2.30.2